import Vue from 'vue'
import App from './App.vue'
import router from './router'
import store from './store'

// 导入axios 对象 配置vue原型
import axios from './utils/request';
Vue.prototype.$axios = axios;

// 全局配置element-ui
import ElementUI from 'element-ui'
import 'element-ui/lib/theme-chalk/index.css'
Vue.use(ElementUI)

//配置echarts 
import * as echarts from "echarts";
Vue.prototype.$echarts = echarts;

Vue.config.productionTip = false

// 全局路由守卫 

router.beforeEach((to, from, next) => {
  // 判断是管理后台的页面地址
  if (to.path.indexOf("/admin") > -1) {
    // 判断登陆页面
    if (to.path == "/admin/login") { //访问的是登陆页面
      if (store.state.token != "") { // 用户已经登录
        next("/admin/home");
      }
    } else {
      // 用户未登录时
      if (store.state.token == "") {
        next("/admin/login");
      }
    }

    // 路由守卫中添加面包屑
     if(to.meta.hasOwnProperty('bread')){
       // 添加面包屑,调用vuex的方法
       store.commit("setBread",to.meta.bread)
     }else{
       store.commit("setBread",[])
     }
  }


  next();
})

new Vue({
  router,
  store,
  render: h => h(App)
}).$mount('#app')